#ifndef KALENDAR_H
#define KALENDAR_H

#include <windows.h>
#include "map.h"

//Class Kalendar(CLass ini JANGAN diINSTANSIASI, gunakan static method)
//	static const integer MAX_HARI_DALAM_MUSIM
//		konstanta integer penanda maksimum banyaknya hari dalam 1 musim
//		maksimum 20 hari
//	static const integer MAX_MUSIM_IN_YEAR
//		konstanta integer penanda maksimum banyaknya musim dalam 1 tahun
//		maksimum 2 musim(0 untuk musim kemarau, 1 untuk musim hujan)
//	static const integer MAX_RANDOM_EVENT
//		konstanta integer penanda maksimum banyaknya jenis kejadian acak
//		yang dapat terjadi
//			untuk hujan & tornado ,pemain beraktivitas setelah hujan atau tornado BERHENTI
//			(maksimum 2)
//		kode kejadian 0 = tornado
//		kode kejadian 1 = hujan
//		kode kejadian 2 = tidak ada kejadian
//	static integer musim
//		variabel integer penanda musim, 0  untuk musim kemarau, 1 untuk musim hujan
//	static integer hari
//		variabel integer penanda hari, angka valid 1-MAX_DAY_IN_MUSIM
class Kalendar {
	private:
	
	static const int MAX_HARI_DALAM_MUSIM;
	static const int MAX_MUSIM_DALAM_TAHUN;
	static const int MAX_RANDOM_EVENT;
	static int musim;
	static int hari;
	
	public:
	
	//static integer GetMaxHariDalamMusim()
	static int GetMaxHariDalamMusim();

	//static integer GetMaxMusimDalamTahun()
	static int GetMaxMusimDalamTahun();
	
	//static void SetMusim(integer value)
	//	set musim menjadi value
	static void SetMusim(int);
	
	//static int GetMusim()
	//	mengembalikan musim
	//		jika musim kemarau kembalikan 0
	//		jika musim hujan kembalikan 1
	static int GetMusim();
	
	//static void SetHari(integer value)
	//	set hari menjadi value
	static void SetHari(int);
	
	//static integer GetHari()
	//	mengembalikan hari
	static int GetHari();
	
	//static integer NextHari()
	//	memajukan 1 hari in-game
	static void NextHari();
	
	//static void RandomizeEvent()
	//	munculkan kejadian secara acak
	//		jika hujan, semua tanaman akan otomatis tersiram
	//			(peluang hujan lebih besar di musim hujan dan lebih kecil di musim
	//			 kemarau)
	//		jika tornado, semua tanaman akan mati
	static int RandomizeEvent();
};

#endif
